iT邦幫忙

2023 iThome 鐵人賽

DAY 23
0

https://ithelp.ithome.com.tw/upload/images/20231008/20141551sHyzrYYyfn.jpg

前言

在撰寫引入路徑時會發現撰寫相對位置的路徑既又繁瑣又難維護,可以透過額外設置路徑別名來解決這個問題。

為什麼需要路徑別名(Aliases)

當網站規模愈複雜,使用相對關係路徑就會需要花費很多心力去解讀與撰寫,舉例來說在 src/pages/about/company.astro 檔案中需要引入在 src/components/global/ 內的 Button.astro 元件在撰寫路徑時就需要理解兩個檔案之間的關係,並且當其中有任何一方移動時路徑就需要修改。

---
<!-- 又長又難寫! -->
import Button from '../../components/global/Button.astro'
---

解決辦法

可以設定專案的「路徑別名」在 tsconfig.jsonjsconfig.json 中:

{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "@components/*": ["src/components/*"],
    }
  }
}

這樣只需要在路徑上使用別名即可,不用考慮檔案之間的路徑關係:

---
import Button from '@components/global/Button.astro
---

總結

實際上 Astro 的路徑別名設定上與 Vite 一模一樣。

延伸閱讀


上一篇
Day22 - 環境變數
下一篇
Day24 - 添加 ESLint 與 Prettier
系列文
網頁開發沒有這麼簡單過!實際案例帶你上手 Astro.js30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言